package cn.ffcs.uec.staffAndOutStaff.dao;

import java.util.List;
import java.util.Map;

import cn.ffcs.uec.staffAndOutStaff.vo.SmallContractUnit;
import cn.ffcs.uec.staffAndOutStaff.vo.StaffAndOutStaff;
import cn.ffcs.uec.staffAndOutStaff.vo.StaffTotalInfo;
import cn.ffcs.uom.common.vo.PageInfo;

public interface StaffAndOutStaffDao {

    /**
     * 根据 AllStaffIncumbentsVo查询数据
     * 
     * @param allStaffIncumbentsVo
     * @param operType
     * @param current
     * @param pageSize
     * @return
     */
    public PageInfo queryPageInfoByAllStaffIncumbentsVo(StaffAndOutStaff staffAndOutStaff, String operType,
            int current, int pageSize);
    
	/**
	 * 根据StaffAndOutStaff查询数据
	 */
	public PageInfo queryPageInfoByStaffAndOutStaff(StaffAndOutStaff staffAndOutStaff,  int current,
			int pageSize);
	
	/**
	 * excel清单下载
	 */
	public List<Map<String, Object>> getStaffAndOutStaffData(StaffAndOutStaff staffAndOutStaff);
	
	/**
	 * 根据主键获取人名
	 */
	public String getStaffAndOutStaffNameByPkPsndoc(String pkPsndoc);
	
	 /**
     * 
     * @param smallContractUnit
     * @param current
     * @param pageSize
     * @return
     */
    public PageInfo queryPageInfoBySmallContractUnit(SmallContractUnit smallContractUnit, int current, int pageSize);

    /**
     * excel清单下载
     * 
     * @param smallContractUnit
     * @return
     */
    public List<Map<String, Object>> getSmallContractUnitData(SmallContractUnit smallContractUnit);
    
    /**
     * 分页显示
     * 
     * @param staffTotalInfo
     * @param current
     * @param pageSize
     * @return
     */
    public PageInfo queryPageInfoByStaffTotalInfo(StaffTotalInfo staffTotalInfo, int current, int pageSize);

    /**
     * excel下载
     * 
     * @param staffTotalInfo
     * @return
     */
    public List<Map<String, Object>> getStaffTotalInfoData(StaffTotalInfo staffTotalInfo);
}
